package com.lp.common.poster.entity;

import com.lp.common.poster.annotation.PosterBackground;
import com.lp.common.poster.annotation.PosterFontCss;
import com.lp.common.poster.annotation.PosterImageCss;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.awt.*;
import java.awt.image.BufferedImage;

/**
 * @program: biz
 * @description:
 * @author: Ke.Song
 * @since: 2024-08-24 16:01:43
 */
@EqualsAndHashCode(callSuper = true)
@Data
public class StudyPoster extends BasePoster {

    /**
     * 背景图
     */
    @PosterBackground(width = 1029, height = 1647)
    private BufferedImage backgroundImage;

    /**
     * 头像
     */
    @PosterImageCss(position = {72, 72}, width = 140, height = 140, circle = true)
    private BufferedImage headImage;

    /**
     * 昵称
     */
    @PosterFontCss(position = {240, 115}, color = {255, 255, 255}, style = Font.BOLD, size = 40, canNewLine = {0, 550, 0}, ellipsis = false)
    private String nickName;

    /**
     * 二维码
     */
    @PosterImageCss(position = {768, 1386}, width = 175, height = 175)
    private BufferedImage qrCode;

    /**
     * 今日学习
     */
    @PosterFontCss(position = {75, 345}, color = {255, 255, 255}, size = 115, style = Font.BOLD)
    private String todayTime;

    /**
     * 今日学习单位
     */
    @PosterFontCss(position = {80, 402}, color = {255, 255, 255}, size = 39, style = Font.BOLD, unit = "todayTime")
    private String todayTimeUnit;

    /**
     * 累计学习
     */
    @PosterFontCss(position = {555, 345}, color = {255, 255, 255}, size = 115, style = Font.BOLD)
    private String onlineTime;

    /**
     * 累计学习
     */
    @PosterFontCss(position = {555, 345}, color = {255, 255, 255}, size = 39, style = Font.BOLD, unit = "onlineTime")
    private String onlineTimeUnit;

    /**
     * 听书
     */
    @PosterFontCss(position = {75, 605}, color = {255, 255, 255}, size = 115, style = Font.BOLD)
    private String readingNum;

    /**
     * 听书
     */
    @PosterFontCss(position = {75, 605}, color = {255, 255, 255}, size = 39, style = Font.BOLD, unit = "readingNum")
    private String readingNumUnit;

    /**
     * 学习课程
     */
    @PosterFontCss(position = {555, 605}, color = {255, 255, 255}, size = 115, style = Font.BOLD)
    private String classNum;

    /**
     * 学习课程
     */
    @PosterFontCss(position = {555, 605}, color = {255, 255, 255}, size = 39, style = Font.BOLD, unit = "classNum")
    private String classNumUnit;

    /**
     * 创作
     */
    @PosterFontCss(position = {75, 870}, color = {255, 255, 255}, size = 115, style = Font.BOLD)
    private String wordNum;

    /**
     * 创作
     */
    @PosterFontCss(position = {75, 870}, color = {255, 255, 255}, size = 39, style = Font.BOLD, unit = "wordNum")
    private String wordNumUnit;

    /**
     * 听故事
     */
    @PosterFontCss(position = {555, 870}, color = {255, 255, 255}, size = 115, style = Font.BOLD)
    private String storyNum;

    /**
     * 听故事
     */
    @PosterFontCss(position = {555, 870}, color = {255, 255, 255}, size = 39, style = Font.BOLD, unit = "storyNum")
    private String storyNumUnit;

    /**
     * 公众演说
     */
    @PosterFontCss(position = {75, 1134}, color = {255, 255, 255}, size = 115, style = Font.BOLD)
    private String speechNum;

    /**
     * 公众演说
     */
    @PosterFontCss(position = {75, 1134}, color = {255, 255, 255}, size = 39, style = Font.BOLD, unit = "speechNum")
    private String speechNumUnit;
}
